Systems and methods for implementing retail processes based on machine-readable images and user gestures

ABSTRACT

Systems and methods for implementing retail processes based on machine-readable images and user gestures are disclosed. According to an aspect, a method includes capturing one or more images including a machine-readable image and a user hand gesture. The method also includes identifying the machine-readable image as being associated with a product. Further, the method includes determining whether the user hand gesture interacts with the machine-readable image in accordance with a predetermined gesture. The method also includes implementing a predetermined retail process in association with the product in response to determining that the user hand gesture interacts with the machine-readable image in accordance with the predetermined gesture.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation-in-part application of co-pending U.S. patent application Ser. No. 14/189,354, filed Feb. 25, 2014 and titled SYSTEMS AND METHODS FOR IMPLEMENTING RETAIL PROCESSES BASED ON MACHINE-READABLE IMAGES AND USER GESTURES, which claims the benefit of U.S. Provisional Patent Application No. 61/924,334, filed Jan. 7, 2014 and titled SYSTEMS AND METHODS FOR IMPLEMENTING RETAIL PROCESSES BASED ON MACHINE-READABLE IMAGES AND USER GESTURES; the contents of which are hereby incorporated herein by reference in their entireties.

FIELD

The present subject matter relates to retail devices and equipment, and more specifically, to implementation of retail processes based on machine-readable images and user gestures.

BACKGROUND

In retail environments, such as grocery stores and other “brick and mortar” stores, retail personnel and customers interact with products and other objects located in the retail environment. As an example, a customer may carry a computing device, such as a smartphone or wearable computing device, and use the computing device for purchasing the product either in the store or through an online retail system. The computing device may be operable to capture an image of a barcode of the product for identification of the product in a subsequent purchase transaction. In this way, the computing device may be used to facilitate purchase of the product while the user is located within a retail environment.

In another example, retail personnel may use a computing device for conducting store inventory. The computing device may be used to scan product barcodes. In this way, the products may be identified for the purposes of inventorying the store.

In view of the foregoing, it is desirable to provide improved techniques and devices for facilitating user interaction with products in a retail environment.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing summary, as well as the following detailed description of various embodiments, is better understood when read in conjunction with the appended drawings. For the purposes of illustration, there is shown in the drawings exemplary embodiments; however, the presently disclosed subject matter is not limited to the specific methods and instrumentalities disclosed. In the drawings:

FIG. 1 is a block diagram of an example system for implementing retail processes based on machine-readable-images and user gestures in accordance with embodiments of the present subject matter;

FIG. 2 is a flow chart of an example method for implementing retail processes based on machine-readable images and user gestures in accordance with embodiments of the present subject matter;

FIG. 3 is a screen display of an example image captured by a computing device in accordance with embodiments of the present subject matter;

FIG. 4 is a screen display of another example image captured by a computing device in accordance with embodiments of the present subject matter;

FIG. 5 is a screen display of another example image captured by a computing device in accordance with embodiments of the present subject matter; and

FIG. 6 is a screen display of another example image captured by a computing device in accordance with embodiments of the present subject matter.

DETAILED DESCRIPTION

The presently disclosed subject matter is described with specificity to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventors have contemplated that the claimed subject matter might also be embodied in other ways, to include different steps or elements similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the term “step” may be used herein to connote different aspects of methods employed, the term should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described.

As referred to herein, the term “computing device” should be broadly construed. It can include any type of device including hardware, software, firmware, the like, and combinations thereof. A computing device may include one or more processors and memory or other suitable non-transitory, computer readable storage medium having computer readable program code for implementing methods in accordance with embodiments of the present subject matter. A computing device may be, for example, retail equipment such as POS equipment. In another example, a computing device may be a server or other computer located within a retail environment and communicatively connected to other computing devices (e.g., POS equipment or computers) for managing accounting, purchase transactions, and other processes within the retail environment. In another example, a computing device may be a mobile computing device such as, for example, but not limited to, a smart phone, a cell phone, a pager, a personal digital assistant (PDA), a mobile computer with a smart phone client, or the like. In another example, a computing device may be any type of wearable computer, such as a computer with a head-mounted display (HMD). A computing device can also include any type of conventional computer, for example, a laptop computer or a tablet computer. A typical mobile computing device is a wireless data access-enabled device (e.g., an iPHONE® smart phone, a BLACKBERRY® smart phone, a NEXUS ONE™ smart phone, an iPAD® device, or the like) that is capable of sending and receiving data in a wireless manner using protocols like the Internet Protocol, or IP, and the wireless application protocol, or WAP. This allows users to access information via wireless devices, such as smart phones, mobile phones, pagers, two-way radios, communicators, and the like. Wireless data access is supported by many wireless networks, including, but not limited to, CDPD, CDMA, GSM, PDC, PHS, TDMA, FLEX, ReFLEX, iDEN, TETRA, DECT, DataTAC, Mobitex, EDGE and other 2G, 3G, 4G and LTE technologies, and it operates with many handheld device operating systems, such as PalmOS, EPOC, Windows CE, FLEXOS, OS/9, JavaOS, iOS and Android. Typically, these devices use graphical displays and can access the Internet (or other communications network) on so-called mini- or micro-browsers, which are web browsers with small file sizes that can accommodate the reduced memory constraints of wireless networks. In a representative embodiment, the mobile device is a cellular telephone or smart phone that operates over GPRS (General Packet Radio Services), which is a data technology for GSM networks. In addition to a conventional voice communication, a given mobile device can communicate with another such device via many different types of message transfer techniques, including SMS (short message service), enhanced SMS (EMS), multi-media message (MMS), email WAP, paging, or other known or later-developed wireless data formats. Although many of the examples provided herein are implemented on smart phone, the examples may similarly be implemented on any suitable computing device, such as a computer.

As referred to herein, the term “user interface” is generally a system by which users interact with a computing device. A user interface can include an input for allowing users to manipulate a computing device, and can include an output for allowing the computing device to present information and/or data, indicate the effects of the user's manipulation, etc. An example of a user interface on a computing device includes a graphical user interface (GUI) that allows users to interact with programs or applications in more ways than typing. A GUI typically can offer display objects, and visual indicators, as opposed to text-based interfaces, typed command labels or text navigation to represent information and actions available to a user. For example, a user interface can be a display window or display object, which is selectable by a user of a computing device for interaction. The display object can be displayed on a display screen of a computing device and can be selected by and interacted with by a user using the user interface. In an example, the display of the computing device can be a touch screen, which can display the display icon. The user can depress the area of the display screen where the display icon is displayed for selecting the display icon. In another example, the user can use any other suitable user interface of a computing device, such as a keypad, to select the display icon or display object. For example, the user can use a track ball or arrow keys for moving a cursor to highlight and select the display object.

As referred to herein, the term “machine-readable image” can be any image that can be recognized by a computing device. For example, a machine-readable image may be a barcode or any other optical machine-readable representation of data, such as a two-dimensional (2D) or three-dimensional (3D) code. In another example, a machine-readable image may be a portion of a product or item that can be recognized by a computing device for identifying the product or item. In another example, a machine-readable image may be all or a portion of a label of a product or item that can be recognized by a computing device for identifying the product or item.

The presently disclosed subject matter is now described in more detail. For example, FIG. 1 illustrates a block diagram of an example system for implementing retail processes based on machine-readable-images and user gestures in accordance with embodiments of the present subject matter. Referring to FIG. 1, the system includes a computing device 100 including an image capture device 102 and a retail process manager 104. The computing device 100 may be a wearable computing device such as, but not limited to, a computing device including a mechanism configured to enable wear of the computing device. In an example, the computing device 100 may be a tablet computer. In another example, the computing device 100 may be an optical head-mounted display device (e.g., the wearable computer referred to as Google Glass available from Google of Menlo Park, Calif.). The computing device 100 may include a user interface 106, such as a display (e.g., touchscreen display), a touchpad, and/or the like. The image capture device 102 may be configured to capture one or more images and/or video.

It is noted that in the examples provided herein, a single computing device (e.g., computing device 100) is described as implementing the disclosed function. However, it should be understood that the functions disclosed herein may alternatively be implemented by multiple computing devices. The computing devices may be communicatively connected via a suitable network. In an example, the functions disclosed herein may be implemented by a system having multiple image capture devices, such as a retail store system having multiple cameras. In this example, the multiple image capture devices may capture images or video of products and user gestures relative to the products. The captured images or video may be used for implementing processes in accordance with embodiments disclosed herein.

The computing device 100 may include a network interface 108 configured to communicate with another computing device via a BLUETOOTH® communications connection or another suitable communications connection. The network interface 108 may communicate with another computing device, such as a server 110, via a network 112 (e.g., a local area network or a wide area network).

The computing device 100 may be configured to use a display of the user interface 106 to implement augmented reality functions. For example, the image capture device 102 may capture and display images on the display. Further, the computing device 100 may simultaneously control the display, along with the captured images displayed in real time, augmented elements of the captured images. For example, the display images may also include information relating to objects or areas in the captured images.

The retail process manager 104 may be implemented by hardware, software, firmware, or combinations thereof. For example, the retail process manager 104 may include one or more processors and memory 114 including instructions for implementation by the processor(s). The retail process manager 104 may be connected to the image capture device 102, the user interface 106, and the network interface 108 for implementation of the functionality disclosed herein.

FIG. 2 illustrates a flow chart of an example method for implementing retail processes based on machine-readable images and user gestures in accordance with embodiments of the present subject matter. The method of FIG. 2 is described by example as being implemented by the retail process manager 104 of the computing device 100 shown in FIG. 1, although it should be understood that the method may be implemented by any suitable computing device(s). Further, reference is made to the example image shown in FIG. 3 and described in further detail herein, although it should be understood that any one or more other images may be used in accordance with embodiments of the present subject matter.

Referring to FIG. 2, the method includes capturing 200 one or more images including a machine-readable image and a user gesture. For example, the retail process manager 104 may control the image capture device 102 to capture one or more images. In an example, the image capture device 102 may capture a still image or video of a barcode. Example barcodes include, but are not limited to, two-dimensional barcodes and matrix barcodes. The video may be captured in real time. Further, the captured image or video data may be stored in the memory 114. As an example, the retail process manager 104 may capture a user hand gesture including a finger and hand of a user pointing to and recognizing the user hand gesture as a tapping gesture with respect to the machine-readable image. Alternatively, the retail process manager 104 may recognize that the hand may be making a point gesture and moving in a swiping motion across the recognized barcode in a particular direction.

The retail process manager 104 may control a display (e.g., the display on a tablet computer or an optical head-mounted display device) of the user interface 106 to display the captured image or video. The image or video may be displayed in real time. For example, the user may be store associate using the computing device to implement retail operations in a retail store. In an example, the store associate may be conducting inventory in the store.

FIG. 3 illustrates a screen display of an example image captured by a computing device in accordance with embodiments of the present subject matter. The image one frame of a video captured of a side of a product 300 having a barcode 302 printed on a side thereof. Further, the captured video may include a hand 304 of a user of the computing device 100 moving in a direction indicated by the direction arrow 306.

Referring again to FIG. 2, the method includes identifying 202 the machine-readable image as being associated with a product. Continuing the aforementioned example, the retail process manager 104 may be configured to receive one or more captured images of the barcode 302 shown in FIG. 3. The retail process manager 104 may be configured to interpret the numerical digits (or other data) that the barcode 302 represents and associate the numerical digits with an identifier for the product 300. Based on the product identifier, the retail process manager 104 may be configured to request from the server 110 or otherwise obtain information about the product 300 based on the identifier.

The method of FIG. 2 includes determining 204 whether the user gesture interacts with the machine-readable image in accordance with a predetermined gesture. Continuing the aforementioned example, the retail process manager 104 may recognize that the hand 304 is the hand of a user of the computing device 100. Further, the retail process manager 104 may recognize that the hand 304 is making a point gesture and moving in a swiping motion across the recognized barcode 302 in the direction 306. Alternatively, for example, two fingers on different hands may come together about the outside of the barcode 302 area to indicate a command. The command may represent a selection of the product 300 associated with the barcode 302. The user gesture may be deemed by the retail process manager 104 to be in accordance with a predetermined gesture for interacting with the barcode 302. Although a swiping gesture and a point gesture is described as being recognized in this example, it should be appreciated that any other suitable gesture captured in one or more images may be recognized as being indicative of an interaction with a machine-readable image in accordance with the present subject matter.

The method of FIG. 2 includes implementing 206 a predetermined retail process in association with the product in response to determining that the user gesture interacts with the machine-readable image in accordance with the predetermined gesture. Continuing the aforementioned example, the retail process manager 104 may add the product to an inventory list, a purchase list, or any other list in response to determining that the hand 304 is making a point gesture and moving in a swiping motion across the recognized barcode 302 in the direction 306. This functionality may be used, for example, for inventorying items within a retail store. For example, the product may be added to the inventory list after recognition of the user gesture interacting with the barcode 302.

In another example, the retail process manager 104 may conduct a purchase transaction for purchase of the product 300 in response to determining that the hand 304 is making a point gesture and moving in a swiping motion across the recognized barcode 302 in the direction 306. This functionality may be used, for example, for user by a customer in purchasing the product by adding the product to a cart for subsequent checkout and purchase.

In accordance with embodiments of the present subject matter, the retail process manager 104 may control the display to display an augmented reality interface together with the display of one or more images. Referring again to FIG. 3, the augmented reality interface may include the boxes in the figure containing the phrases “Buy Product,” “Product Information,” and “Product Reviews”. The user may interact with the boxes to initiate a command. For example, the “Buy Product” box may be interacted with to initiate purchase of the product or add to product to a cart for subsequent purchase. The “Product Information” box may be interacted with to request additional information about the product, and the information may be displayed via the augmented reality interface. The “Product Reviews” box may be interacted with to request review information about the product, and the review information may be displayed via the augmented reality interface.

In accordance with embodiments of the present subject matter, the retail process manager 104 may determine a position of the user gesture in the image(s) and controlling the display to display an identifier for identifying the position of the user gesture. For example, the tip of the finger of the hand 304 shown in FIG. 3 may be augmented via a suitable augmented reality technique to include an indicia to show the location of the fingertip. In an example, the fingertip may be augmented with a colored dot such that the user may see on the display that the computing device 100 recognizes the finger and/or hand 304.

In an example scenario, a customer may be in a retail store and may carry the computing device 100. Further, the customer may pick up an item, such as the product 300 shown in FIG. 3. Further, the customer may orient the product 300 such that the barcode 302 faces the image capture device 102. Further, the customer can point his or her finger at the one end of the barcode, and the retail process manager 104 can recognize the barcode 302 and augment the words “barcode located, swipe to buy”. The customer can subsequently swipe his or her finger from one end of the barcode 302 to the other. In response to the swipe gesture, the retail process manager 104 scans the barcode 302 and adds the product 300 to the customer's shopping cart. The customer may subsequently place the product 300 in the cart and moves on to the next. When he or she is done with shopping, the customer can walk out the door. The computing device 100 may recognize that the customer left the store, and in response thereto, the computing device 100 may total the transaction and charge his or her financial account.

In another example scenario, an employee in a retail store and carrying the computing device 100 can use a “point and swipe” gesture to take inventory of items being placed on store shelves.

In accordance with embodiments of the present subject matter, the user interface 106 of the computing device 100 shown in FIG. 1 may include a video display. The retail process manager 104 may apply augmented reality (AR) to an existing video feed from the image capture device 102. The retail process manager 104 may use image recognition to find the barcode for a product, such as the product 300 shown in FIG. 3. In the video display, a blue box is placed around the barcode 302 and arrows point to buttons that provide additional options. In this example, the customer can buy the product, obtain additional product information or obtain reviews about this product. The customer may touch the buttons. When the camera picks up, the customer's hand (or finger) and the retail process manager 104 recognizes the button being touched, the button action may be implemented.

FIG. 4 illustrates a screen display 400 depicting another example image captured by a computing device in accordance with embodiments of the present subject matter. Referring to FIG. 4, the image may be one frame of a video captured of a side of the product 300 having the barcode 302 printed on a side thereof. Further, the captured video may include the hand 304 of a user of the computing device 100 moving in a variety of directions. It is noted that any body part or an extension thereof may be used to indicate a user gesture.

The example of FIG. 4 is another example by which the retail process manager 104 can determine whether a user gesture interacts with the machine-readable image in accordance with a predetermined gesture. For example, the retail process manager 104 may recognize that the hand 304 is the hand of a user of the computing device 100. Further, the retail process manager 104 may recognize that the hand 304 may be making a point gesture and moving in a swiping motion across the recognized barcode 302 in the direction 306. The user gesture may be deemed by the retail process manager 104 to be in accordance with a predetermined gesture for interacting with the barcode 302. Although a swiping gesture and a point gesture is described as being recognized in this example, it should be appreciated that any other suitable gesture captured in one or more images may be recognized as being indicative of an interaction with a machine-readable image in accordance with the present subject matter.

In an example, the retail process manager 104 may recognize or determine the predetermined gesture includes using one or more fingers 402 of the hand 304 of the user to gesture with respect to the machine-readable image. A finger 402 may point to and may be recognized as a tapping 404 gesture with respect to the machine-readable image. The tapping 404 gesture may be determined either by a tapping-type movement (e.g., move up and down as shown by double arrow 406 in predetermined relationship to the machine readable code) or by an audible sound being predefined or predetermined to indicate the tapping 404 gesture. The tapping gesture 404 may include more than one tap sequence and may be gestured such as to indicate a different command relative to the barcode 302 such as add, subtract, or add more than one product 300. As an example, one (1) tap may indicate a predetermined retail process or command of adding the product 300 associated with the recognized barcode 302 to a computing based shopping cart, whereas two (2) taps may indicate the subtraction of the product 300 from the transaction. The tapping 404 gesture may be paired with a finger 402 location gesture such that a finger 402 may be recognized on one side of the barcode 302 or within the barcode 302 such that if a tapping 404 gesture is detected, a command is executed when the command is associated with that particular location and tapping 404 gesture. Additionally, tapping 404 over the top of the barcode 302 may mean to add the product 300 represented by the barcode 302 to the transaction whereas tapping to the right of the barcode 302 may indicate that an instruction for subtracting this product 300. Alternatively, tapping to the right of the barcode 302 may indicate an instruction to add two of the products 300 to the transaction, as an example.

In another example, the retail process manager 104 may recognize or determine the predetermined gesture is that the finger 402 is pointing to and swiping under, over, or alongside of the recognized barcode 302. More than one swipe sequence may be made such as to indicate a different command is to be executed relative to the product 300 such as add, subtract, or add more than one item, as an example. In another example, the retail process manager 104 may recognize or determine the predetermined gesture includes the finger 402 pointing to and be drawing a geometric shape 408 around the code. For example, the finger 402 may be recognized as drawings a shape such as, but not limited to, a circle, square or triangle around the code. Each geometric shaped 408 gesture may initiate a different command to interact with the product 300 such as add, subtract, add more than one item, or another command associated with the product 300. Other geometric shaped gestures 408 may be drawn to indicate different commands or instructions. It is noted the geometric shape 408 may be substantially similar to a predetermined geometric shape 408 such that the retail process manager 104 may recognized the geometric shape 408 drawn as the geometric shape 408. In another example, the retail process manager 104 may recognize or determine the predetermined gesture involves the finger 400 pointing to and moving about in three-dimensional (3D) space (represented by circular arrows 410) by moving toward or away from the recognized barcode 302 such as rotating in a circular fashion relative to the barcode 302. It is noted that movement in 3D space 410 may be any movement not in the same plane or a parallel plane as the barcode 302. As described herein, other commands may be executed to buy the product 412, retrieve product information 414, and retrieve product reviews 416, as examples. Any executable command may also be integrated into an augmented reality interface as described herein. As an example, the user gestures described herein may be determined to interact with an augmented reality image of the machine readable code or with additional POS product information functions or commands that may be displayed in the augmented space which may be interacted with by the user gestures as described herein. In one example, a user gesture or command may be determined to be for returning a previously-purchased item or product.

FIG. 5 illustrates a screen display 500 of another example image captured by a computing device in accordance with embodiments of the present subject matter. Referring to FIG. 5, the image may be one frame of a video captured of a side of the product 300 having the barcode 302 printed on a side thereof. Further, the captured video may include a hand 304 of a user of the computing device 100 moving in any direction desired.

The example of FIG. 5 is another example by which the retail process manager 104 can determining whether a user gesture interacts with the machine-readable image in accordance with a predetermined gesture. Continuing the aforementioned example, the retail process manager 104 may recognize that a finger 402 on more than one (1) hand 304 may be recognized while determining 204 whether the user gesture interacts with the machine-readable image.

In an example, two fingers 402 come together 502 about the outside of the barcode 302 area to indicate a command. The command may represent a selection of the product 300 associated with the barcode 302. Alternatively, the two fingers moving in a direction apart from each other about the outside of the barcode 302 area may indicate a de-select command. As another example, more than one (1) finger 402 may be combined with any of the above gestures. As an example, the more than one (1) finger 402 may interact geometrically (not shown), forming a circle with a thumb and a forefinger. Alternatively, two (2) hands 304 may be used to form a figure relative to the barcode 302 such as the thumbs and forefingers from each of two hands 304 forming an area that can be placed above a barcode 302 to represent a command. As another example, a particular finger 402 (e.g., an index finger) extended on one hand 304 may represent a product 300 select and the hand 304 may be rotated such that the particular finger may rest adjacent to the barcode 302 to execute an associated command. As another example, the user may desire to snap the fingers 402 on the hand 304 together to indicate by audible sound or movement a desired command. Additionally, at least one finger 402 on one hand 304 moving relative to at least one finger 402 on another hand 304 may be determined to indicate a command about the barcode 302. As an example, a user may form a “U” shape with two (2) fingers 402 (e.g., an index finger and a thumb) on one hand 304 above the barcode 302 while the index finger 402 of the second hand motions up and down to indicate an action, such as a simulated scrolling action. The simulated scrolling action may be used to indicate an action for interaction with an augmented reality image of the machine readable code or with additional POS product 300 information functions. Alternatively, the user may ball the fingers 402 into a first and release in front of or relative to the barcode 302. The user may also flash at least one finger 402 to indicate a number of items associated with the barcode 302 to put in the electronic shopping cart associated with the transaction.

FIG. 6 illustrates a screen display 600 depicting another example image captured by a computing device in accordance with embodiments of the present subject matter. Referring to FIG. 6, the image may be one frame of a video captured of a side of the product 300 having the barcode 302 printed on a side thereof. Further, the captured video may include a hand 304 of a user of the computing device 100 moving in a direction indicated by the direction arrow 306.

The example of FIG. 6 is another example by which the retail process manager 104 can determine whether a user gesture interacts with the machine-readable image in accordance with a predetermined gesture. Continuing the aforementioned example, the retail process manager 104 may recognize that one or more fingers 402 on more than one (1) hand 304 may be recognized to determine that the user gesture interacts with the machine-readable image.

In an example, a finger 402 from the hand 304 may be recognized as interacting with the barcode 302 such as an index finger 602 pointing to a barcode 302 representing a product 300 may be recognized as an indication for the computer (e.g. computing device 100 shown in FIG. 1) to display information about the product 300, such as nutrition information as an example. Additionally, the index finger 602 may move to initiate an action or command as described herein. Alternatively, the index finger 602 may remain substantially motionless for a predetermined period of time, such as a few seconds (e.g., two (2) seconds). As another example, the index finger 602 and an extended thumb 604 may indicate a computer action such as retrieval of the product 300 price. Another example, may be to extend the index finger 602 and also the middle finger 606 to indicate the desire to retrieve product manufacturing. Other examples may be to extend any combination of none, one (1) or all of the fingers on any number of hands to indicate an action or command as desired. It is noted that in response to determining that the user gestures as described herein interact with the machine-readable image in accordance with the predetermined gesture, a predetermined retail process in association with the product 300 may be executed or implemented.

Disclosed herein are several examples by which it is determined that a user hand gesture interacts with a machine-readable image in accordance with a predetermined gesture for implementing a predetermined retail process. It should be understood that any number and combination of gestures may be recognized as being in accordance with a predetermined gesture. Such gestures may be recorded or otherwise captured by one or more image capture devices. Subsequently, the captured image(s) may be processed and analyzed for determined whether there is interaction with the machine-readable image in accordance with a predetermined gesture.

In accordance with embodiments, predetermined gestures may be combined with one or more other user inputs for determining whether to implement a predetermined retail process. For example, a user may make a sound and/or move a computing device for implementing a desired retail process. In an example, the user may speak one or more words and make one or more user gestures (e.g., tapping on a product barcode). Together such inputs may be recognized as being a command for implementing a predetermined retail process. In a particular example, a user may “swipe” his or her finger across a barcode and speak “add three” for adding 3 of the products to a purchase transaction or inventory count. The other input may be any other suitable user input that may be recognized by a computing device. As an example, the user input may be input into a user interface, such as a keypad or touchscreen display.

The present subject matter may be a system, a method, and/or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present subject matter.

The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.

Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.

Computer readable program instructions for carrying out operations of the present subject matter may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like, and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present subject matter.

Aspects of the present subject matter are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the subject matter. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.

These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.

The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.

The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present subject matter. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.

While the embodiments have been described in connection with the various embodiments of the various figures, it is to be understood that other similar embodiments may be used or modifications and additions may be made to the described embodiment for performing the same function without deviating therefrom. Therefore, the disclosed embodiments should not be limited to any single embodiment, but rather should be construed in breadth and scope in accordance with the appended claims. 

What is claimed:
 1. A method comprising: capturing, using an image capture device, one or more images including a machine-readable image and a user hand gesture; identifying the machine-readable image as being associated with a product; determining whether the user hand gesture interacts with the machine-readable image in accordance with a predetermined gesture; and in response to determining that the user hand gesture interacts with the machine-readable image in accordance with the predetermined gesture, implementing a predetermined retail process in association with the product.
 2. The method of claim 1, wherein the machine-readable image is one of a barcode, a two-dimensional code, a three-dimensional code, a portion of the product, and a product label, and wherein the machine-readable image represents data that identifies the product, and wherein identifying the machine-readable image comprises interpreting the data to identify the product.
 3. The method of claim 1, wherein the predetermined gesture comprises one of a swipe gesture and a point gesture with respect to the machine-readable image.
 4. The method of claim 1, wherein the predetermined gesture comprises one or more fingers of a user gesturing with respect to the machine-readable image.
 5. The method of claim 1, wherein the predetermined gesture comprises a tapping of the one or more fingers with respect to the machine-readable image.
 6. The method of claim 1, wherein the predetermined gesture comprises drawing a geometric shape with the one or more fingers with respect to the machine-readable image.
 7. The method of claim 1, wherein the predetermined gesture comprises a three-dimensional movement gesture with respect to the machine-readable image.
 8. The method of claim 1, wherein the predetermined gesture comprises determining one or more fingers of a first hand and one or more fingers of a second hand gesturing with respect to the machine-readable image.
 9. The method of claim 1, wherein the predetermined gesture comprises one or more fingers on a first hand moving relative to one or more fingers on a second hand for gesturing with respect to the machine-readable image.
 10. The method of claim 1, further comprising determining predetermined user input into a computing device, and wherein implementing the predetermined retail process comprises implementing the predetermined retail process based on the predetermined user input.
 11. The method of claim 10, wherein the predetermined user input includes one or more of sound, another user gesture, and user input.
 12. A computing device comprising: an image capture device configured to capture one or more images including a machine-readable image and a user hand gesture; and a retail process manager including at least a processor and memory configured to: identify the machine-readable image as being associated with a product; determine whether the user hand gesture interacts with the machine-readable image in accordance with a predetermined gesture; and implement a predetermined retail process in association with the product in response to determining that the user hand gesture interacts with the machine-readable image in accordance with the predetermined gesture.
 13. The computing device of claim 12, wherein the machine-readable image is one of a barcode, a two-dimensional code, a three-dimensional code, a portion of the product, and a product label, and wherein the machine-readable image represents data that identifies the product, and wherein the retail process manager is configured to interpret the data to identify the product.
 14. The computing device of claim 12, wherein the retail process manager is configured to determine one of a swipe gesture and a point gesture with respect to the machine-readable image.
 15. The computing device of claim 12, wherein the retail process manager is configured to determine whether one or more fingers of one or more hands of a user gesture with respect to the machine-readable image.
 16. The computing device of claim 12, wherein the retail process manager is configured to determine a tapping of the one or more fingers with respect to the machine-readable image.
 17. The computing device of claim 12, wherein the retail process manager is configured to determine a drawing of a geometric shape with the one or more fingers with respect to the machine-readable image.
 18. The computing device of claim 12, wherein the retail process manager is configured to determine a three-dimensional movement gesture with respect to the machine-readable image.
 19. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions readable by a computing device to cause the computing device to: receive, by the computing device, one or more captured images including a machine-readable image and a user hand gesture; identify, by the computing device, the machine-readable image as being associated with a product; determine, by the computing device, whether the user hand gesture interacts with the machine-readable image in accordance with a predetermined gesture; and implement, by the computing device, a predetermined retail process in association with the product in response to determining that the user hand gesture interacts with the machine-readable image in accordance with the predetermined gesture. 